package bingo.codeweaver.core.annotation;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
 * May 25, 2009 12:32:32 PM
 * Author:yangdongyu(yangdy@bingosoft.net)
 * ReadMe:字段注解
 * ChangeLog:
 */
@Documented  
@Retention(RetentionPolicy.RUNTIME)  
@Target(ElementType.FIELD) 
public @interface Column {

	/**
	 * 字段的名称
	 * @return
	 */
	public String name() default "";
	
	/**
	 * 字段对应的数据类型
	 * @return
	 */
	public String dataType() default "";
	/**
	 * 该字段是否是表的主键
	 * @return
	 */
	public boolean primaryKey() default false;
	/**
	 * 是否唯一
	 * @return
	 */
	public boolean unique() default false;
	/**
	 * 是否允许为空 
	 * @return
	 */
	public boolean nullable() default true;
	
	/**
	 * 默认值
	 * @return
	 */
	public String defaultValue() default "";
	
	/**
	 * 字段注释
	 * @return
	 */
	public String comment() default "";
	
	/**
	 * 数据长度
	 * @return
	 */
	public int length() default 100;
}
